Удалите все строчные латинские
буквы ‘a’ из заданной строки.
Вход.
Одна строка, содержащая не более 1000 латинских букв и пробелов.
Выход.
Выведите строку без строчных латинских букв ‘a’, сохранив порядок остальных
символов.
Пример входа |
Пример выхода |
abrakadabra |
brkdbr |
строки
Объявим
два указателя, оба изначально установим на начало массива: i = j = 0. Пройдемся
указателем i по всем символам строки. Для каждого символа s[i],
не равного ‘a’,
скопируем его в s[j] и сдвинем указатель j на одну позицию
вперед.
Реализация алгоритма
Объявим
символьный массив.
char s[1001];
Читаем входную строку.
fgets(s, sizeof(s), stdin);
Буквы, отличные от ‘a’,
передвигаем влево.
int j = 0;
for (int i = 0; i < strlen(s); i++)
if (s[i] != 'a') s[j++] =
s[i];
В конце результирующей строки ставим 0 байт.
s[j] = 0;
Выводим результат.
puts(s);
Реализация алгоритма – С++
Читаем входную строку.
getline(cin, s);
Символы, отличные от ‘a’, добавляем
к результирующей строке res.
for (i = 0; i < s.length(); i++)
if (s[i] != 'a') res.push_back(s[i]);
Выводим результат.
cout << res;
Java реализация
import
java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
String s = con.nextLine();
String res = "";
for(int i = 0; i < s.length(); i++)
if (s.charAt(i) != 'a') res = res + s.charAt(i);
System.out.printf(res);
con.close();
}
}
Java реализация – replace
import java.util.*;
public class Main
{
public static void main(String[] args)
{
Scanner con = new Scanner(System.in);
String s = con.nextLine();
s = s.replace("a", "");
System.out.printf(s);
con.close();
}
}
Python реализация
Читаем
входную строку.
s = input()
Для удаления всех букв ‘a’ из строки воспользуемся методом replace().
Он создает новую строку, заменяя все вхождения указанной подстроки на другую
подстроку.
replace(old,
new)
· old:
Подстрока, которую нужно заменить.
· new:
Подстрока, на которую нужно заменить.
print(s.replace('a', ''))